package com.smedi.ismedi.web.starter.util;

import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;

@Slf4j
@Component
public class SegmentateUtil<T> {
    public List<List<T>> doCut(List<T> target, int size) {
        List<List<T>> listArr = new ArrayList<>();
        // 获取被拆分的数组个数
        int arrSize = target.size() % size == 0 ? target.size() / size : target
                .size() / size + 1;
        for (int i = 0; i < arrSize; i++) {
            List<T> sub = new ArrayList();
            // 把指定索引数据放入到list中
            for (int j = i * size; j <= size * (i + 1) - 1; j++) {
                if (j <= target.size() - 1) {
                    sub.add(target.get(j));
                }
            }
            listArr.add(sub);
        }
        return listArr;
    }
}
